Singletons sind sehr nützlich, wenn nur eine Instanz einer Klasse benötigt wird und nicht mehrere Instanzen einer Klasse existieren sollen.
Das Designmuster impliziert, dass zu beliebiger Zeit jeweils nur eine Instanz eines Singletons (Objekts) durch die JVM erzeugt werden kann. Die Implementierung des Musters erfolgt über die Erzeugung einer Klasse mittels einer Methode, die wiederum eine neue Instanz einer Klasse erzeugt, wenn diese nicht bereits existiert. Wenn bereits eine Instanz der Klasse vorhanden ist, erfolgt lediglich eine Referenz auf dieses Objekt.
So funktioniert das Singleton-Muster
Nachfolgend wird ein typisches Beispiel für ein Singleton gezeigt:
Das klassische Singleton verwendet keine direkte Instanzierung einer statischen Variable mit Deklaration. Es instanziert vielmehr eine statische Instanzvariable im Konstruktor, ohne zu überprüfen, ob diese bereits existiert:
Der Standardkonstruktor für die Singleton-Klasse wird individuell ausgelegt. Dadurch ist keine direkte Instanzierung des Objekts durch andere Klassen mittels des neuen Schlüsselworts möglich. Ein statischer Modifikator wird auf die Instanzmethode angewendet, die das Singleton-Objekt zurückgibt. Auf diese Weise wird sie zu einer Methode auf Klassenebene, die ohne Erzeugung eines Objekts zugänglich ist.
Neueste Kommentare
Noch keine Kommentare zu Java-Design: So funktioniert das Singleton
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.